package modelo.naves;

import modelo.Movil;
import modelo.armas.Balas;

public abstract class Naves extends Movil {
	
	protected EnergiaLineal energia;
	
	public void mover(){
		if (this.energiaAgotada()) {
			throw new EnergiaAgotadaException();
		}
		super.mover();
	}

	public void chocarConBala(Balas unaBala){
		unaBala.dispararA(this);
		return;
	}
	
	public boolean energiaAgotada(){
		return energia.agotada();
	}
	
	public int getEnergia(){
		return energia.getValor();
	}
	
	public EnergiaLineal getEnergiaObj(){
		return energia;
	}
	
	public void morir(){
		energia.agotar();
	}
	
	public void recibirDisparo(int unValor){
		energia.recibirDanio(unValor);
	}
	
	public boolean seguirActuando() {
		return !(energia.agotada());
	}
	
}
